package cn.core.sign.mapper;

import cn.core.sign.eo.LoginLog;
import cn.core.sign.qo.LoginLogQO;
import cn.core.sign.vo.LoginLogVO;
import cn.core.tool.util.Paging;
import org.apache.ibatis.annotations.Param;

import java.util.Collection;

/**
 * 登录日志 mybatis 持久化接口
 */
public interface LoginLogMapper {

  /**
   * 登录日志 >>> 新增
   */
  public void save(@Param("eo") LoginLog eo) throws Exception;

  /**
   * 登录日志 >>> 批量新增
   */
  public void saveBatch(@Param("paging") Paging<?> paging, @Param("eos") Collection<LoginLog> eos) throws Exception;

  /**
   * 登录日志 >>> 全字段更新
   */
  public void update(@Param("eo") LoginLog eo) throws Exception;

  /**
   * 登录日志 >>> 批量全字段更新
   */
  public void updateBatch(@Param("paging") Paging<?> paging, @Param("eos") Collection<LoginLog> eos) throws Exception;

  /**
   * 登录日志 >>> 部分字段更新
   */
  public void updateSome(@Param("eo") LoginLog eo) throws Exception;

  /**
   * 登录日志 >>> 批量部分字段更新
   */
  public void updateSomeBatch(@Param("paging") Paging<?> paging, @Param("eos") Collection<LoginLog> eos) throws Exception;

  /**
   * 登录日志 >>> 条件更新
   */
  public void updateQuery(@Param("eo") LoginLog eo, @Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 删除
   */
  public void remove(@Param("eo") LoginLog eo) throws Exception;

  /**
   * 登录日志 >>> 批量删除
   */
  public void removeBatch(@Param("eos") Collection<LoginLog> eos) throws Exception;

  /**
   * 登录日志 >>> 条件删除
   */
  public void removeQuery(@Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 数据量
   */
  public Long count(@Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 主键查询
   */
  public LoginLog pk(@Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 查询
   */
  public Collection<LoginLog> query(@Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 分页
   */
  public Collection<LoginLog> paging(@Param("paging") Paging<?> paging, @Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 业务数据量
   */
  public Long countVo(@Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 业务主键查询
   */
  public LoginLogVO pkVo(@Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 业务查询
   */
  public Collection<LoginLogVO> queryVo(@Param("qo") LoginLogQO qo) throws Exception;

  /**
   * 登录日志 >>> 业务分页
   */
  public Collection<LoginLogVO> pagingVo(@Param("paging") Paging<?> paging, @Param("qo") LoginLogQO qo) throws Exception;

}
